The growth of wireless technologies has produced a range of choices for mobile connectivity. This growth has been one enabler in the expansion of personal mobile devices such as advanced mobile phones, personal digital assistants (PDAs), and other diminutive devices. The plethora of devices and connectivity options has created an opportunity for new communication ideas and services. Even existing resources can be better utilized by exploiting the new wireless technology, middleware, and protocols. The increase in connectivity options has allowed users to keep their “always-on” devices always on their person. It appears that this trend will shift the concept of “personal computing” from desktop personal computers (PCs), and laptops, to mobile devices.
Concurrent with this wireless technologies growth has been the growth of instant messaging (IM). IM is a popular communication application that began on the desktop and quickly migrated to mobile devices, helped along by the ease in porting the small footprint client. The popularity of IM is due to its simplicity, wide usage, and quick response. Users are able to hold simultaneous disjoint text-based exchanges with multiple users or contacts. IM systems create a fluid communication environment that encourages many exchanges with multiple contacts by publishing their presence or availability. When a contact starts using their IM client, and thus available for receiving messages, the IM system notifies all other users interested in the contact. Users now aware of the presence of the contact simply send messages to the contact's IM identity. So the IM system not only manages the messages between users, it takes care of detecting and notifying users of each other's availability or presence.
IM clients can be found on mobile phones, wireless PDAs, pager devices, etc. Furthermore, IM enjoys healthy attention from service providers such as AOL (America Online) and MSN (Microsoft Network) as well as the open standards community like the JABBER organization. This results in a constant expansion of the IM paradigm and the underlying technology (for example, secure and enterprise versions). Early IM systems consisted of buddy lists (presence notification), chat (text messages), and chat rooms. More recent developments include file and media exchange, as well as streaming media.
The popularity of IM makes it a natural interface for communication applications. For example, presence-based voice calls are notable because they drop the dialing step, reducing the uncertainty of connecting with the party of interest. IM has also been used to add communication features to existing applications by associating an IM channel with application usage. Network gaming is one example of adding a separate or an integrated IM communication channel to enhance the dynamics of group play. Work-related collaboration is another natural progression for IM use, both in the session staging as well as the interaction phase.
The present invention extends IM beyond communications and into the general application space. There exist prior art systems that have put application interfaces on IM clients. Typically such systems provide a messaging server that interfaces to an application server using a server-side natural language processor to replace the elements of the application's interface. These systems translate phrases and abbreviated text into the appropriate query and command statements. The inclusion of a natural language interface creates an added layer of application abstraction requiring the user to learn a new model for using an application. The burden on the user grows with the number of applications added to the system. These systems are well suited for query-like application interfaces (i.e. Structured Query Language, SQL) for use with an online helpdesk or in information queries. Additional prior art systems include an “application buddy” that uses presence information and search algorithms to deliver general message alerts to a user.
In addition, prior art remote desktop systems exist that deliver the full desktop interface to networked devices. For example, Microsoft Corporation's Remote Desktop Protocol is a protocol for transporting mouse, keyboard, and display rendering information for Windows-based applications. It demands high bandwidth to a client that may have a smaller footprint but is physically a PC. This system is suited for locally networked PCs running Microsoft technology. Any deviation from this configuration introduces latency and detracts from the user interface experience. The number of devices and services that support the system also limits usage.
Many mobile application delivery systems are designed to deliver content to different devices, making the necessary content conversion or protocol translation. Standards, such as J2ME (Sun Microsystems, Java 2 Enterprise Edition), provide support for writing mobile device independent applications, including the user interface. There exist prior art proprietary systems that provide coverage for many devices that may be used to access resources. The breadth of support requires a complex infrastructure and maintenance. As mobile communications and devices continue to expand in the number of protocols and devices, these systems must incorporate the changes and resolve any conflicts and inconsistencies. By attempting to deliver device and technology independence they assume the burden of integrating new technologies and requirements while maintaining performance expectations.
There exists a need in the prior art to extend IM beyond communications, that is, to utilize it as an application interface. Moreover, this interface should provide a universal interface to represent disparate applications on unmodified IM clients. The present invention addresses these needs by providing an instant messaging user interface. This aspect of the invention is referenced herein as IMUI. IMUI leverages existing infrastructure, devices, client interfaces, and applications to provide ubiquitous access to computing services.